/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.hiruss.imageprocessor.util;

/**
 *
 * @author Hiru
 */
public class Filters {

    public static final int[][] MEAN_FILTER = {
        {1, 1, 1},
        {1, 1, 1},
        {1, 1, 1}
    };
    public static final int[][] MEAN_FILTER_3X3 = {
        {1, 1, 1},
        {1, 2, 1},
        {1, 1, 1}
    };
    public static final int[][] MEAN_FILTER_5X5 = {
        {1, 2, 3, 2, 1},
        {2, 7, 11, 7, 2},
        {3, 11, 17, 11, 3},
        {2, 7, 11, 7, 2},
        {1, 2, 3, 2, 1}
    };
    public static int[][] MEDIAN_FILTER_HORIZONTAL = {
        {0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0},
        {5, 5, 5, 5, 5},
        {0, 0, 0, 0, 0},
        {0, 0, 0, 0, 0}};
    public static int[][] EDGE_FILTER_SOBEL_X = {
        {-1, 0, 1},
        {-2, 0, 2},
        {-1, 0, 1}};
    public static int[][] EDGE_FILTER_SOBEL_Y = {
        {1, 2, 1},
        {0, 0, 0},
        {-1, -2, -1}};
    public static int[][] EDGE_FILTER_LAPLACIAN = {
        {0, 1, 0},
        {1, -4, 1},
        {0, 1, 0}};
    public static int[][][] EDGE_FILTER_HRISH = {
        {{-3, -3, 5},
            {-3, 0, 5},
            {-3, -3, 5}},
        {{-3, 5, 5},
            {-3, 0, 5},
            {-3, -3, -3}},
        {{5, 5, 5},
            {-3, 0, -3},
            {-3, -3, -3}},
        {{5, 5, -3},
            {5, 0, -3},
            {-3, -3, -3}},
        {{5, -3, -3},
            {5, 0, -3},
            {5, -3, -3}},
        {{-3, -3, -3},
            {5, 0, -3},
            {5, 5, -3}},
        {{-3, -3, -3},
            {-3, 0, -3},
            {5, 5, 5}},
        {{-3, -3, -3},
            {-3, 0, 5},
            {-3, 5, 5}},};

    public static enum TYPE {

        AVARAGE, AVARAGE_THREASHOLD, MEDIAN, MIN, MAX, MID, ALPHA_TRIMMED, 
        EDGE, SOBEL_X, SOBEL_Y, SOBEL_BOTH, LAPLACIAN;
    }
}
